Exemplary embodiments relate to a method of programming a nonvolatile memory device and, more particularly, to a program method for cases where over-programmed cells occur.
FIGS. 1A and 1B are graphs illustrating concerns related to a known art.
With an increase in the level of a program voltage Vpgm Bias supplied to a selected word line, the threshold voltages (Cell Vt) of memory cells to be programmed increase. It is desired that as in FIG. 1A, the level of a voltage supplied to the word line is in direct proportion to the threshold voltages Vt of memory cells. However, an increase of the threshold voltage Vt depends on different factors, and the memory cells have different electrical characteristics. Accordingly, as shown in FIG. 1B, the level of the program voltages Vpgm Bias supplied to the word line, while somewhat proportional to the threshold voltage Cell Vt of the memory cells, but is not directly proportional to the threshold voltages Cell Vt of the memory cells.
A program operation is performed using an incremental step pulse program (ISPP) method of raising the threshold voltages of memory cells to be programmed while gradually raising the level of a program voltage Vpgm supplied to a selected word line. In particular, if in the program operation using the incremental step pulse program (ISPP) method, the threshold voltages of the memory cells irregularly rise, the reliability of the program operation may deteriorate. According to an example, a step voltage of a program voltage Vpgm (i.e., an increment of the program voltage Vpgm) is 0.5 V and the threshold voltages of memory cells to be programmed range from 1.0 V to 1.5 V. Here, when the program voltage Vpgm of 17 V has been supplied to a selected word line and thus the threshold voltages of the memory cells have reached 0.6 V, the memory cells are determined not to have passed a program verification operation in an (N−1)th program operation because the threshold voltage of 0.6 V is lower than the minimum voltage (1.0 V) of the programmed range.
Next, if an Nth program voltage Vpgm of 17.5 V increases by 0.5 V from the program voltage Vpgm of 17 V is supplied to the selected word line, the threshold voltages of the memory cells is expected to be 1.1 V which is the previous threshold voltage of 0.6 V increased by 0.5 V. If the threshold voltages of, for example, all the memory cells have reached 1.0 V, a program verification operation is determined to be a pass. However, if the threshold voltages of the memory cells are not increased as expected (for example, increase only by 0.3V) when the Nth program voltage Vpgm is supplied to the selected word line, the threshold voltages become 0.9 V and thus the program verification operation is determined not to be a pass. In such a case, an (N+1)th program operation is performed and an (N+1)th program voltage of 18.0 V is supplied to the selected word line. In this case, the threshold voltages of the memory cells is expected to rise by 0.7 V in which 0.2 V not increased in the Nth program operation and an increment (i.e., 0.5 V) of the (N+1)th program operation are added together. That is, the (N+1)th program operation is performed in order to raise the threshold voltages of the memory cells to 1.6 V. Here, the threshold voltages of 1.6 V when so programmed are higher than a voltage level for a program verification operation to be a pass. Accordingly, such a program is called an over-program. Over-programmed memory cells have high threshold voltages. Thus, when interference is generated during a program operation for neighboring memory cells, the threshold voltages of the over-programmed memory cells may rise. Here, the increased threshold voltages of the over-programmed memory cells may rise during a program operation for neighboring cells. If the risen threshold voltages rise to a threshold voltage corresponding to other data, different data from data stored when a program operation is performed may be read.